Skip to content

Conversation

@patrick-stephens
Copy link
Contributor

@patrick-stephens patrick-stephens commented Jan 13, 2026

Simple (!) rename to use our new branding.


Summary by cubic

Renamed FluentDo Agent to Telemetry Forge Agent across code, CI, packaging, and docs. Keeps compatibility with the FLUENTDO agent kind and existing API endpoints; no runtime behavior changes.

  • Refactors

    • Switched repos and image names to telemetryforge/agent (ghcr.io/telemetryforge/agent) and updated badges/CODEOWNERS; cleaned CI defaults and removed Homebrew steps.
    • Renamed env vars from FLUENTDO_AGENT_* to TELEMETRY_FORGE_AGENT_*; moved install prefix to /opt/telemetryforge-agent; updated service, package, and unit names.
    • Renamed plugins to custom_telemetryforge and in_telemetryforge; added TELEMETRY_FORGE agent kind; retained FLUENTDO kind for compatibility; updated tests and upstream references to fluent/fluent-bit.
  • Migration

    • Update Docker/Helm references to ghcr.io/telemetryforge/agent and adjust chart overrides.
    • Replace FLUENTDO_AGENT_* env vars, paths (/opt/telemetryforge-agent), service name (telemetryforge-agent), and package name (telemetryforge-agent).
    • If you reference agent plugins, switch to in_telemetryforge and custom_telemetryforge.

Written for commit f0c4ecc. Summary will update on new commits.

Signed-off-by: Patrick Stephens <pat@fluent.do>
Signed-off-by: Patrick Stephens <pat@fluent.do>
@patrick-stephens
Copy link
Contributor Author

@cubic-dev-ai please review and find any incorrect updates (e.g. typos) or missing areas where we have not changed FluentDo to Telemetry Forge

@cubic-dev-ai
Copy link

cubic-dev-ai bot commented Jan 13, 2026

@cubic-dev-ai please review and find any incorrect updates (e.g. typos) or missing areas where we have not changed FluentDo to Telemetry Forge

@patrick-stephens I have started the AI code review. It will take a few minutes to complete.

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

40 issues found across 83 files

Confidence score: 2/5

  • Validation in source/plugins/in_telemetryforge/telemetryforge.c currently rejects the documented fluentdo option, so merging would break backward-compatible configurations for the rename effort—too risky without fixing the acceptance list.
  • testing/bats/run-package-functional-tests.sh echoes a URL with a double https://, guaranteeing functional test downloads fail until the prefix is corrected.
  • Multiple production edits across files like source/packaging/build.sh, source/src/flb_engine.c, and related CMake/Docker resources landed without any matching updates under source/tests/ or source/testing/, violating the “Ensure tests are added” policy and leaving the changes unverified.
  • Pay close attention to source/plugins/in_telemetryforge/telemetryforge.c, testing/bats/run-package-functional-tests.sh, and the touched source/* production files that lack new tests—each needs correction before merge.

Note: This PR contains a large number of files. cubic only reviews up to 75 files per PR, so some files may not have been reviewed.

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="source/plugins/in_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/in_telemetryforge/telemetryforge.c:54">
P1: Rule violated: **Ensure tests are added**

Production code under source/ was updated without any corresponding automated tests under source/tests/ or source/testing/, violating the “Ensure tests are added” rule for code changes.</violation>

<violation number="2" location="source/plugins/in_telemetryforge/telemetryforge.c:494">
P1: Validation logic rejects 'fluentdo' but config documentation claims it's valid. For backward compatibility during this rename, the validation should accept 'fluentdo', 'fluentbit', or 'telemetryforge'.</violation>
</file>

<file name="source/cpack/scripts/sysv-init-install.sh">

<violation number="1" location="source/cpack/scripts/sysv-init-install.sh:3">
P1: Rule violated: **Ensure tests are added**

Modifying a production script under source/ requires updating or adding at least one automated test under source/tests/ or source/testing/, but this PR contains no such test changes, violating the "Ensure tests are added" policy.</violation>
</file>

<file name="testing/bats/run-package-functional-tests.sh">

<violation number="1" location="testing/bats/run-package-functional-tests.sh:53">
P1: Double 'https://' prefix creates malformed URL. The variable already includes the protocol, so the prefix should be removed from the echo statement.</violation>
</file>

<file name="source/packaging/distros/suse/Dockerfile">

<violation number="1" location="source/packaging/distros/suse/Dockerfile:89">
P1: Rule violated: **Ensure tests are added**

This production change under source/ must be paired with an automated test update in source/tests/ or source/testing/, but the PR contains no test-file modifications to cover the renamed install prefix, violating the Ensure tests are added rule.</violation>
</file>

<file name="source/packaging/distros/centos/Dockerfile">

<violation number="1" location="source/packaging/distros/centos/Dockerfile:229">
P1: Rule violated: **Ensure tests are added**

This production code change under source/ lacks any accompanying updates in source/tests/ or source/testing/, so the required automated tests were not added or updated.</violation>
</file>

<file name="source/CMakeLists.txt">

<violation number="1" location="source/CMakeLists.txt:223">
P1: Rule violated: **Ensure tests are added**

This production change in source/CMakeLists.txt lacks any accompanying updates under source/tests or source/testing, violating the “Ensure tests are added” rule for non-version metadata changes.</violation>
</file>

<file name="source/cmake/version.rc.in">

<violation number="1" location="source/cmake/version.rc.in:35">
P1: Rule violated: **Ensure tests are added**

Modifying production resources under source/ requires adding or updating at least one automated test under source/tests/ or source/testing/, but this PR changes source/cmake/version.rc.in without any corresponding test updates. Please add/update a relevant test to keep coverage aligned with the production change.</violation>
</file>

<file name="source/src/flb_engine.c">

<violation number="1" location="source/src/flb_engine.c:775">
P1: Rule violated: **Ensure tests are added**

Production file source/src/flb_engine.c was modified without any accompanying updates under source/tests/ or source/testing/, violating the policy that every production change must be paired with an automated test change (rule “Ensure tests are added”).</violation>
</file>

<file name="source/cmake/plugins_options.cmake">

<violation number="1" location="source/cmake/plugins_options.cmake:14">
P1: Rule violated: **Ensure tests are added**

This production change under source/ lacks any accompanying updates under source/tests/ or source/testing/, so the required automated tests were not added or updated.</violation>

<violation number="2" location="source/cmake/plugins_options.cmake:14">
P2: Breaking change: Renaming CMake options without deprecation path. Users with existing build configurations using -DFLB_CUSTOM_FLUENTDO or -DFLB_IN_FLUENTDO will experience build failures. Consider adding temporary backward compatibility or documenting this breaking change in release notes/migration guide.</violation>
</file>

<file name="source/packaging/build.sh">

<violation number="1" location="source/packaging/build.sh:82">
P1: Rule violated: **Ensure tests are added**

Modifying source/packaging/build.sh updates production build logic but no files under source/tests/ or source/testing/ were changed, so automated tests were not added or updated as required when production code changes.</violation>
</file>

<file name="source/plugins/custom_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/custom_telemetryforge/telemetryforge.c:48">
P1: Rule violated: **Ensure tests are added**

Production code in source/plugins/custom_telemetryforge/telemetryforge.c was modified without adding or updating any tests under source/tests/ or source/testing/, violating the “Ensure tests are added” requirement.</violation>
</file>

<file name="source/plugins/custom_telemetryforge/CMakeLists.txt">

<violation number="1" location="source/plugins/custom_telemetryforge/CMakeLists.txt:7">
P1: Rule violated: **Ensure tests are added**

Production code was added under source/plugins/custom_telemetryforge/ without any corresponding updates in source/tests/ or source/testing/, violating the “Ensure tests are added” requirement.</violation>
</file>

<file name="source/init/az2-systemd.in">

<violation number="1" location="source/init/az2-systemd.in:2">
P1: Rule violated: **Ensure tests are added**

`source/init/az2-systemd.in` is a production file, so modifying it requires updating or adding a test under `source/tests/` or `source/testing/`, but this PR contains no such test changes. Please add or update a relevant automated test to cover this rename per the “Ensure tests are added” rule.</violation>
</file>

<file name="source/init/systemd.in">

<violation number="1" location="source/init/systemd.in:2">
P1: Rule violated: **Ensure tests are added**

This production change under source/ lacks any accompanying updates in source/tests/ or source/testing/, violating the requirement to add or modify tests whenever production code changes.</violation>
</file>

<file name="testing/bats/tests/functional/linux/verify-deb.bats">

<violation number="1" location="testing/bats/tests/functional/linux/verify-deb.bats:40">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

Add `set -euo pipefail` (or an equivalent guard) near the top of this BATS script before referencing `$TELEMETRY_FORGE_AGENT_VERSION`; currently the script lacks the required strict mode and still consumes the variable without a guard, violating the safe shell policy.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/chunk-rollover/basic.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/chunk-rollover/basic.bats:34">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

The file lacks `set -euo pipefail`, and the renamed Telemetry Forge image variables are sourced without `${VAR:?}`-style guards, violating the safe shell script rule and allowing the test to proceed with unset image/tag values.</violation>
</file>

<file name="testing/bats/tests/functional/linux/verify-rpm.bats">

<violation number="1" location="testing/bats/tests/functional/linux/verify-rpm.bats:19">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This script still lacks the required `set -euo pipefail` (or guarded parameter expansions) despite continuing to use `$PACKAGE_NAME`, so it remains non-compliant with the safe shell scripts requirement.</violation>
</file>

<file name="source/packaging/distros/azurelinux/Dockerfile">

<violation number="1" location="source/packaging/distros/azurelinux/Dockerfile:56">
P1: Rule violated: **Ensure tests are added**

Production file source/packaging/distros/azurelinux/Dockerfile changed without any accompanying updates under source/tests/ or source/testing/, violating the “Ensure tests are added” rule for production code changes.</violation>
</file>

<file name="source/plugins/custom_fluentdo/CMakeLists.txt">

<violation number="1" location="source/plugins/custom_fluentdo/CMakeLists.txt:1">
P1: Rule violated: **Ensure tests are added**

Deleting a production plugin definition without any accompanying updates under source/tests/ or source/testing/ violates the “Ensure tests are added” rule; at least one related test file must be added, modified, or removed alongside this change.</violation>
</file>

<file name="source/packaging/distros/debian/Dockerfile">

<violation number="1" location="source/packaging/distros/debian/Dockerfile:272">
P1: Rule violated: **Ensure tests are added**

Production changes were made without any accompanying updates under source/tests/ or source/testing/. Please add or update automated tests covering this Docker build logic change to comply with the testing requirement.</violation>
</file>

<file name="source/include/fluent-bit/flb_graphql_client.h">

<violation number="1" location="source/include/fluent-bit/flb_graphql_client.h:33">
P1: Rule violated: **Ensure tests are added**

Production code in source/include/fluent-bit/flb_graphql_client.h was updated, but this PR does not modify or add any automated tests under source/tests/ or source/testing/ as required by the "Ensure tests are added" rule. Please add or update the relevant tests to cover the new Telemetry Forge agent kind.</violation>
</file>

<file name="source/plugins/custom_telemetryforge/telemetryforge.h">

<violation number="1" location="source/plugins/custom_telemetryforge/telemetryforge.h:20">
P1: Rule violated: **Ensure tests are added**

This production change under source/ lacks any corresponding updates in source/tests/ or source/testing/, violating the “Ensure tests are added” rule for modified source files.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/elasticsearch/compress.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/elasticsearch/compress.bats:52">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This executable bats script still lacks `set -euo pipefail`, and the newly introduced Telemetry Forge environment variables are used unguarded; if either variable is unset the Helm upgrade silently substitutes an empty string, contrary to the repository’s safe shell requirements.</violation>
</file>

<file name="testing/bats/tests/functional/common/simple.bats">

<violation number="1" location="testing/bats/tests/functional/common/simple.bats:30">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This Bats test lacks `set -euo pipefail` and uses TELEMETRY_FORGE_AGENT_VERSION unguarded, so the version check can succeed even when the required environment variable is missing. Guard the variable (e.g., `${TELEMETRY_FORGE_AGENT_VERSION:?}`) or add the strict shell options to fail fast when it is absent.</violation>
</file>

<file name="scripts/setup-code.sh">

<violation number="1" location="scripts/setup-code.sh:36">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This shell script still runs with `set -eux` but never enables `-o pipefail`, while the newly updated Telemetry Forge environment variables (e.g., `TELEMETRY_FORGE_AGENT_VERSION`) are used unguarded. Per the Safe Shell Script rule, executable scripts must enable `set -euo pipefail` (or equivalent) before using env variables to avoid silent pipeline failures. Please add `-o pipefail` alongside the existing strict flags near the top of the script.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/integration-basic-helm.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/integration-basic-helm.bats:36">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This script still omits `set -euo pipefail` near the shebang and now introduces unguarded TELEMETRY_FORGE_* variables, so the helm upgrade command will execute with empty parameters whenever those vars are unset, violating the safe shell requirement. Guard the variables (e.g., `${VAR:?}`) or enable strict mode before using them.</violation>
</file>

<file name="scripts/add-ignored-files.sh">

<violation number="1" location="scripts/add-ignored-files.sh:27">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This script still runs without `set -o pipefail` while the modified URL line uses the unguarded `FLUENT_BIT_VERSION`, violating the Safe Shell Scripts rule 5d83c005-5c54-41ac-871a-9256b4dbc4a3. Please enable `set -euo pipefail` (or add guarded expansions) so silent pipeline failures can’t slip through.</violation>
</file>

<file name="testing/bats/tests/integration/containers/integration-simple-containers.bats">

<violation number="1" location="testing/bats/tests/integration/containers/integration-simple-containers.bats:26">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This executable Bats script still lacks `set -euo pipefail` near the top and the new `TELEMETRY_FORGE_AGENT_IMAGE/TAG` dereferences remain unguarded, so running the pull command with unset env vars would silently use empty image names. Add strict shell options or guard these env vars with `${VAR:?…}` before use to comply with the “Require Safe Shell Scripts” rule.</violation>
</file>

<file name="source/plugins/CMakeLists.txt">

<violation number="1" location="source/plugins/CMakeLists.txt:250">
P2: Rule violated: **Ensure tests are added**

Production code was updated without any accompanying changes under source/tests/ or source/testing/, violating the Ensure tests are added rule for this rename.</violation>

<violation number="2" location="source/plugins/CMakeLists.txt:251">
P2: The CMakeLists.txt renames the plugins from 'fluentdo' to 'telemetryforge', but the plugin code still references 'fluentdo' in the help text. This documentation string should be updated to reflect the rebranding and remove the obsolete 'fluentdo' reference.</violation>
</file>

<file name="source/init/sysvinit.in">

<violation number="1" location="source/init/sysvinit.in:8">
P2: Rule violated: **Ensure tests are added**

Updating source/init/sysvinit.in without any accompanying change under source/tests/ or source/testing/ violates the “Ensure tests are added” rule for production code changes.</violation>
</file>

<file name="source/cpack/description">

<violation number="1" location="source/cpack/description:1">
P2: Rule violated: **Ensure tests are added**

Modifying production code under source/ requires at least one accompanying change in source/tests/ or source/testing/, but this PR updates source/cpack/description without any corresponding test file changes. Please update or add the relevant tests to satisfy the “Ensure tests are added” rule.</violation>
</file>

<file name="source/packaging/distros/mariner/Dockerfile">

<violation number="1" location="source/packaging/distros/mariner/Dockerfile:58">
P2: Rule violated: **Ensure tests are added**

This production change under source/ requires a corresponding update in source/tests/ or source/testing/, but the PR contains no such test modifications, violating the repository’s “Ensure tests are added” rule.</violation>
</file>

<file name="install.sh">

<violation number="1" location="install.sh:865">
P2: Documentation URL inconsistent with README. The README documents `https://docs.fluent.do` as the documentation site, but this line uses `https://telemetryforge.io/docs/agent`. Consider using `https://docs.fluent.do/agent` to match the documented URL structure.</violation>
</file>

<file name="source/packaging/distros/centos/6/Dockerfile">

<violation number="1" location="source/packaging/distros/centos/6/Dockerfile:125">
P2: Rule violated: **Ensure tests are added**

Production code under source/ was modified without any accompanying updates in source/tests/ or source/testing/, violating the “Ensure tests are added” rule (rule 79b4ee05-4ee5-4da6-8dcc-8c025425ab72). Please add or update an appropriate automated test to cover this change.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/elasticsearch/basic.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/elasticsearch/basic.bats:52">
P2: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This executable Bats script lacks `set -euo pipefail` near the top and the newly modified lines reference `$TELEMETRY_FORGE_AGENT_IMAGE`/`$TELEMETRY_FORGE_AGENT_TAG` without guarded expansion, so missing or empty vars would silently proceed, violating the "Require Safe Shell Scripts" rule.</violation>
</file>

<file name="scripts/centos6-init-check.sh">

<violation number="1" location="scripts/centos6-init-check.sh:34">
P2: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This shell script still omits `set -euo pipefail` near the top (`set -eux` is missing `pipefail`) while the new `telemetryforge-agent` branch continues to expand `WORKDIR` without any guard (`${WORKDIR}`), leaving the script vulnerable to silent failures per the Safe Shell Scripts rule.</violation>
</file>

<file name="README.md">

<violation number="1" location="README.md:2">
P2: The new README hero image src points to `extras/agent-logo.jpeg`, but that file is missing from the repository, so the rendered README shows a broken image.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

18 issues found across 83 files

Confidence score: 3/5

  • Doc text in source/plugins/in_telemetryforge/telemetryforge.c advertises an agent_kind value that the validation logic rejects, so users following the help text will hit preventable runtime errors.
  • Many production updates (init scripts, telemetryforge plugin, multiple distro Dockerfiles) landed without any accompanying changes under source/tests or source/testing, leaving behavior changes unverified.
  • Pay close attention to source/plugins/in_telemetryforge/telemetryforge.c, source/init/*, and source/packaging/distros/* - documentation/behavior mismatch and absent test coverage need resolution.

Note: This PR contains a large number of files. cubic only reviews up to 75 files per PR, so some files may not have been reviewed.

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="source/packaging/distros/centos/6/Dockerfile">

<violation number="1" location="source/packaging/distros/centos/6/Dockerfile:125">
P2: Rule violated: **Ensure tests are added**

This production change under source/packaging/distros/centos/6 lacks any accompanying updates under source/tests/ or source/testing/, violating the “Ensure tests are added” rule that requires automated tests whenever source code changes are made.</violation>
</file>

<file name="source/CMakeLists.txt">

<violation number="1" location="source/CMakeLists.txt:223">
P2: Rule violated: **Ensure tests are added**

Changes to source/CMakeLists.txt update production build metadata without any corresponding updates under source/tests/ or source/testing/. The rule requires at least one automated test change whenever production files under source/ are modified.</violation>
</file>

<file name="source/cmake/plugins_options.cmake">

<violation number="1" location="source/cmake/plugins_options.cmake:14">
P1: Rule violated: **Ensure tests are added**

Production code under source/cmake/plugins_options.cmake was updated without any corresponding changes under source/tests or source/testing, so the required automated tests were not added or updated for this change.</violation>
</file>

<file name="source/init/upstart.in">

<violation number="1" location="source/init/upstart.in:1">
P1: Rule violated: **Ensure tests are added**

source/init/upstart.in was changed without any accompanying updates under source/tests/ or source/testing/, violating the “Ensure tests are added” rule that mandates test updates whenever production source files change.</violation>
</file>

<file name="source/plugins/custom_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/custom_telemetryforge/telemetryforge.c:48">
P1: Rule violated: **Ensure tests are added**

Production code under `source/plugins/custom_telemetryforge/telemetryforge.c` was modified, but no files under `source/tests/` or `source/testing/` were added or updated in this PR. Add or update automated tests covering this change to satisfy the “Ensure tests are added” rule.</violation>
</file>

<file name="source/init/sysvinit.in">

<violation number="1" location="source/init/sysvinit.in:8">
P1: Rule violated: **Ensure tests are added**

Production file source/init/sysvinit.in was modified, but the PR contains no accompanying changes under source/tests/ or source/testing/. The rule requires adding or updating tests whenever production code changes, so please include an appropriate test update covering this rename.</violation>
</file>

<file name="source/plugins/in_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/in_telemetryforge/telemetryforge.c:54">
P1: Rule violated: **Ensure tests are added**

Production code in source/plugins/in_telemetryforge/telemetryforge.c was updated without any accompanying changes under source/tests/ or source/testing/, violating the requirement to add or update automated tests when modifying source/.</violation>

<violation number="2" location="source/plugins/in_telemetryforge/telemetryforge.c:813">
P1: Configuration description claims agent_kind accepts 'fluentdo', but validation logic rejects it. This mismatch between documentation and implementation will cause runtime errors for users following the help text.</violation>
</file>

<file name="source/packaging/distros/rockylinux/Dockerfile">

<violation number="1" location="source/packaging/distros/rockylinux/Dockerfile:141">
P1: Rule violated: **Ensure tests are added**

This production change under source/ requires a corresponding automated test update (source/tests or source/testing), but the PR adds none, so the rule “Ensure tests are added” is violated.</violation>
</file>

<file name="source/cpack/scripts/sysv-init-install.sh">

<violation number="1" location="source/cpack/scripts/sysv-init-install.sh:3">
P1: Rule violated: **Ensure tests are added**

This production change lacks any accompanying updates under source/tests/ or source/testing/, violating the “Ensure tests are added” rule that requires at least one automated test change whenever source/ code is modified.</violation>
</file>

<file name="source/packaging/distros/suse/Dockerfile">

<violation number="1" location="source/packaging/distros/suse/Dockerfile:89">
P1: Rule violated: **Ensure tests are added**

Production code under source/packaging/distros/suse/Dockerfile was modified without any corresponding updates under source/tests/ or source/testing/, violating the “Ensure tests are added” rule (79b4ee05-4ee5-4da6-8dcc-8c025425ab72). Add or update automated tests to cover this change so the rule’s requirement is satisfied.</violation>
</file>

<file name="source/packaging/distros/debian/Dockerfile">

<violation number="1" location="source/packaging/distros/debian/Dockerfile:272">
P1: Rule violated: **Ensure tests are added**

This PR updates production code under source/ (source/packaging/distros/debian/Dockerfile) but does not include any corresponding changes under source/tests/ or source/testing/, violating the “Ensure tests are added” rule. Please add or update automated tests covering these changes.</violation>
</file>

<file name="testing/bats/tests/functional/linux/verify-deb.bats">

<violation number="1" location="testing/bats/tests/functional/linux/verify-deb.bats:40">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This script still lacks `set -euo pipefail`, and the newly edited assertion dereferences `$TELEMETRY_FORGE_AGENT_VERSION` without any guard, so a missing variable would be silently treated as empty. Guard the variable (e.g., `${TELEMETRY_FORGE_AGENT_VERSION:?Missing version}`) or enable the strict shell options near the shebang to comply with the safe shell script requirement.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/elasticsearch/basic.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/elasticsearch/basic.bats:52">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

Guard the new `TELEMETRY_FORGE_AGENT_*` variables (or enable `set -euo pipefail`) before using them so the test fails fast when they are unset, per the safe shell script guideline.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/chunk-rollover/basic.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/chunk-rollover/basic.bats:34">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This shell test lacks `set -euo pipefail` and now reads `TELEMETRY_FORGE_AGENT_*` env vars without guarding them, violating the safe-shell requirement. Add strict shell options or wrap the variables with `${VAR:?}` to fail fast when unset.</violation>
</file>

<file name="README.md">

<violation number="1" location="README.md:2">
P3: The new hero image points to `extras/agent-logo.jpeg`, but that file doesn’t exist anywhere in the repo, so the README will display a broken image.</violation>
</file>

<file name="scripts/add-ignored-files.sh">

<violation number="1" location="scripts/add-ignored-files.sh:27">
P2: The ignored-file fetcher now downloads from `fluent/fluent-bit`, which is the upstream project rather than our Telemetry Forge fork, so it will add files from the wrong repository. Update the URL to point at the Telemetry Forge repo to keep the script aligned with our distribution.</violation>
</file>

<file name="testing/bats/run-package-functional-tests.sh">

<violation number="1" location="testing/bats/run-package-functional-tests.sh:53">
P2: Double protocol prefix in URL construction. The TELEMETRY_FORGE_AGENT_URL default includes 'https://' but the echo statement also prepends 'https://', resulting in 'https://https://staging.fluent.do/...'</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Signed-off-by: Patrick Stephens <pat@fluent.do>
Signed-off-by: Patrick Stephens <pat@fluent.do>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 2 files (changes from recent commits).

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="source/plugins/custom_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/custom_telemetryforge/telemetryforge.c:187">
P1: Rule violated: **Ensure tests are added**

Production file source/plugins/custom_telemetryforge/telemetryforge.c was modified without any accompanying updates under source/tests/ or source/testing/, which is required by the “Ensure tests are added” rule for any source/ changes. Please add or update automated tests covering this change.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

patrick-stephens and others added 2 commits January 13, 2026 13:06
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Signed-off-by: Pat <patrick.j.k.stephens@gmail.com>
Signed-off-by: Patrick Stephens <pat@fluent.do>
@patrick-stephens
Copy link
Contributor Author

@cubic-dev-ai please review and ignore failures around missing tests as test cases are present in most cases but are part of the changed names.

@cubic-dev-ai
Copy link

cubic-dev-ai bot commented Jan 13, 2026

@cubic-dev-ai please review and ignore failures around missing tests as test cases are present in most cases but are part of the changed names.

@patrick-stephens I have started the AI code review. It will take a few minutes to complete.

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 2 files (changes from recent commits).

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="source/plugins/in_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/in_telemetryforge/telemetryforge.c:603">
P1: Rule violated: **Ensure tests are added**

This PR modifies production code under `source/plugins/in_telemetryforge/telemetryforge.c` but does not add or update any automated tests under `source/tests/` or `source/testing/`, violating the “Ensure tests are added” rule.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

9 issues found across 83 files

Confidence score: 3/5

  • Renaming the storage stream to "telemetryforge" in source/plugins/in_telemetryforge/telemetryforge.c will orphan existing session files on upgrade, likely forcing every deployed agent to re-register—significant regression risk.
  • Several production changes (e.g., Dockerfiles and source/plugins/custom_telemetryforge/telemetryforge.c) ship without corresponding updates under source/tests/ or source/testing/, leaving new behavior unverified.
  • Multiple shell-based integration tests (testing/bats/tests/integration/k8s/*.bats) now expand Helm env vars without set -euo pipefail or guard checks, so unset variables could make the scripts silently misbehave.
  • Pay close attention to source/plugins/in_telemetryforge/telemetryforge.c, source/cpack/scripts/sysv-init-install.sh, .github/workflows/call-test-packages.yaml, and the testing/bats/tests/integration/k8s scripts - they drive the most critical upgrade and automation behaviors mentioned.

Note: This PR contains a large number of files. cubic only reviews up to 75 files per PR, so some files may not have been reviewed.

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name=".github/workflows/call-test-packages.yaml">

<violation number="1" location=".github/workflows/call-test-packages.yaml:178">
P2: Update debug command to match new installation path. The glob pattern `/opt/fluent*` won't match the renamed installation directory `/opt/telemetryforge-agent/`.</violation>
</file>

<file name="source/plugins/in_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/in_telemetryforge/telemetryforge.c:318">
P1: Changing the storage stream name from "fluentdo" to "telemetryforge" will prevent existing session files from being found on upgrade, forcing agent re-registration. Consider adding migration logic to check for and import old "fluentdo" stream data, or document this as a breaking change.</violation>
</file>

<file name="source/cpack/scripts/sysv-init-install.sh">

<violation number="1" location="source/cpack/scripts/sysv-init-install.sh:3">
P2: Renaming the init.d check removed the fallback for the legacy `fluentdo-agent` script, so systems that still provide that service will fail with “No init.d script found.” Keep the new name but add an `elif` for the old script to preserve compatibility.</violation>
</file>

<file name="source/packaging/distros/centos/Dockerfile">

<violation number="1" location="source/packaging/distros/centos/Dockerfile:229">
P1: Rule violated: **Ensure tests are added**

Production code was changed without any accompanying updates under source/tests/ or source/testing/, violating the "Ensure tests are added" requirement.</violation>
</file>

<file name="source/packaging/distros/centos/6/Dockerfile">

<violation number="1" location="source/packaging/distros/centos/6/Dockerfile:125">
P1: Rule violated: **Ensure tests are added**

Modifying production code under source/ requires updating or adding at least one automated test under source/tests/ or source/testing/, but this PR introduces no such test changes.</violation>
</file>

<file name="source/plugins/custom_telemetryforge/telemetryforge.c">

<violation number="1" location="source/plugins/custom_telemetryforge/telemetryforge.c:49">
P1: Rule violated: **Ensure tests are added**

Production code was modified without any accompanying updates under source/tests/ or source/testing/, violating the requirement to update or add automated tests when source/ files change.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/integration-basic-helm.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/integration-basic-helm.bats:36">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

Guard the `TELEMETRY_FORGE_AGENT_IMAGE` and `_TAG` variables (or enable `set -euo pipefail`) before using them in this script so missing env vars fail fast per the Safe Shell Scripts rule.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/chunk-rollover/basic.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/chunk-rollover/basic.bats:34">
P2: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This script runs without `set -euo pipefail` and the added Helm arguments still expand environment variables (`TELEMETRY_FORGE_AGENT_IMAGE` / `TAG`) without `${VAR:?}` or other guards, so failures will silently proceed, violating the “Require Safe Shell Scripts” guideline.</violation>
</file>

<file name="testing/bats/tests/integration/k8s/elasticsearch/basic.bats">

<violation number="1" location="testing/bats/tests/integration/k8s/elasticsearch/basic.bats:52">
P1: Rule violated: **Require Safe Shell Scripts (set -euo pipefail or explicit env checks)**

This script lacks `set -euo pipefail`, yet the newly added Helm arguments expand `TELEMETRY_FORGE_AGENT_IMAGE` and `TELEMETRY_FORGE_AGENT_TAG` without any guarding, so a missing env var would go unnoticed. Add the strict shell flags or guard these variables with `${VAR:?}` to comply with the safe shell script guideline.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 1 file (changes from recent commits).

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="source/cpack/scripts/sysv-init-install.sh">

<violation number="1" location="source/cpack/scripts/sysv-init-install.sh:7">
P0: Remove this duplicate `elif` statement - it creates an empty block and duplicates the fluent-bit check that already exists on the next line.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Signed-off-by: Pat <patrick.j.k.stephens@gmail.com>
Signed-off-by: Patrick Stephens <pat@fluent.do>
@patrick-stephens patrick-stephens merged commit 9e1c726 into main Jan 13, 2026
47 checks passed
@patrick-stephens patrick-stephens deleted the rename_tel_forge branch January 13, 2026 14:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants